package org.colafries.admin.entity.vo.index;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.colafries.admin.entity.vo.ColafriesBaseVO;

/**
 * @author Ann
 * @version v1.0
 * @ClassName LogicFactTableReqVO
 * @Description
 * @date Created in 2024/6/3
 **/
@EqualsAndHashCode(callSuper = true)
@Data
public class LogicFactTblReqVO extends ColafriesBaseVO {
    /**
     * 逻辑表code
     */
    @ApiModelProperty(value = "逻辑表code", dataType = "string", required = true, example = "xxx")
    private String logicTableCode;
    /**
     * 逻辑表英文名
     */
    @ApiModelProperty(value = "逻辑表英文名", dataType = "string", required = true, example = "fct_matter_v1_igt_project_accept_info")
    private String logicTableName;

    /**
     * 逻辑表名称
     */
    @ApiModelProperty(value = "逻辑表名称", dataType = "string", required = true, example = "办件受理事实表")
    private String logicTableAlias;

    /**
     * 逻辑事实表主键
     */
    @ApiModelProperty(value = "逻辑事实表主键", dataType = "string", required = true, example = "project_no")
    private String logicPrimaryKey;

    /**
     * 数据源id
     */
    @ApiModelProperty(value = "数据源id", dataType = "integer", required = true, example = "4")
    private Integer sourceDbId;

    /**
     * schema
     */
    @ApiModelProperty(value = "schema", dataType = "string", required = true, example = "matter_v1")
    private String sourceSchema;

    /**
     * 来源表
     */
    @ApiModelProperty(value = "来源表", dataType = "string", required = true, example = "igt_project_accept_info")
    private String sourceTableName;

    /**
     * SQL筛选条件
     */
    @ApiModelProperty(value = "SQL筛选条件", dataType = "string", example = "sup_city_code != ''")
    private String expression;

    @ApiModelProperty(value = "创建人", dataType = "string", example = "Ann")
    private String createUser;

    @ApiModelProperty(value = "修改人", dataType = "string", example = "Ann")
    private String updateUser;
}
